﻿// See https://aka.ms/new-console-template for more information
using System.IO.MemoryMappedFiles;
//内存映射文件允许多个进程共享内存区域，适合大数据量的高效传输。
Console.WriteLine("内存映射文件写入者启动~");
//创建一个内存映射文件
using (var mmf = MemoryMappedFile.CreateOrOpen("testmap", 10000))
{
    //创建一个视图访问器
    using (var accessor = mmf.CreateViewAccessor())
    {
        Console.WriteLine("内存映射文件已创建，等待读取者接入");
        Console.ReadLine();
        Console.WriteLine("读取者已接入，开始写入数 据");
        var message = "Hello from writer";
        //写入数据
        var array = System.Text.Encoding.UTF8.GetBytes(message);
        accessor.WriteArray(0, array, 0, array.Length);
        Console.WriteLine("数据写入完成");
        Console.ReadLine();
    }
}
